#ifndef TOPHAT_H
#define TOPHAT_H
#include <QImage>
#include "Ptr.hpp"
#include "Core.h"


using namespace OOPUtils;



class TopHat
{
public:

	enum Type
	{
		WTT, BTT
	};

	TopHat();

	Ptr< QImage > process (Ptr< QImage > pSrcImage);

	Ptr< QImage > doWTT (Ptr< QImage > pSrcImage);

	Ptr< QImage > doBTT (Ptr< QImage > pSrcImage);

	void setType (Type t);

	Type getType () const;

private:

	Core< int > _se;

	Type _type;
	
};

#endif // TOPHAT_H
